package adminUserLog

import (
    "database/sql"
    "roy/common/model"
)

var m model.Model

func init() {
    m.Table = "yunduan_admin_user_log"
}

// AdminUserLog 管理员登录日志
type AdminUserLog struct {
    // Data 要添加或修改的数据
    Data map[string]interface{}
    // Where 条件
    Where map[string]map[string]any
    // List 要添加的多组数据
    List []map[string]interface{}
    // Fields 查询字段
    Fields []string
    // 排序字段
    Order string
    // 排序方式
    OrderType string
    // Limit 查询条数
    Limit string
    // Sql 原生 sql
    Sql string
}

// GetList 查询
func (aul *AdminUserLog) GetList() ([]map[string]interface{}, error) {
    m.Where = aul.Where
    m.Fields = aul.Fields
    m.Order = aul.Order
    m.OrderType = aul.OrderType
    m.Limit = aul.Limit
    return m.GetList()
}

// GetModel 查询单条数据(返回 array)
func (aul *AdminUserLog) GetModel() (map[string]interface{}, error) {
    m.Where = aul.Where
    m.Order = aul.Order
    m.OrderType = aul.OrderType
    m.Fields = aul.Fields
    return m.GetModel()
}

// GetRow 查询单条数据(返回 sql.Row)
func (aul *AdminUserLog) GetRow() (*sql.Row, error) {
    m.Where = aul.Where
    m.Order = aul.Order
    m.OrderType = aul.OrderType
    m.Fields = aul.Fields
    row, err := m.GetRow()
    return row, err
}

// Add 添加
func (aul *AdminUserLog) Add() (any, error) {
    m.Data = aul.Data
    m.List = aul.List
    return m.Add()
}

// Delete 删除
func (aul *AdminUserLog) Delete() (int64, error) {
    m.Where = aul.Where
    return m.Delete()
}

// Update 修改
func (aul *AdminUserLog) Update() (int64, error) {
    m.Data = aul.Data
    m.Where = aul.Where
    return m.Update()
}

// Exec 原生sql增、删、改
func (aul *AdminUserLog) Exec() (int64, error) {
    m.Sql = aul.Sql
    return m.Exec()
}

// Query 原生sql查询
func (aul *AdminUserLog) Query() ([]map[string]interface{}, error) {
    m.Sql = aul.Sql
    return m.Query()
}